﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace UYD_WCS_AS_AGV_Controller.AGV.Model
{
    public class HeaderStamp
    {
        /// <summary>
        /// 
        /// </summary>
        public int secs { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int nsecs { get; set; }
    }

    public class Header
    {
        /// <summary>
        /// 
        /// </summary>
        public int seq { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public HeaderStamp stamp { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string frame_id { get; set; }
    }

    public class Goal_id_Stamp
    {
        /// <summary>
        /// 
        /// </summary>
        public int secs { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int nsecs { get; set; }
    }

    public class Goal_id
    {
        /// <summary>
        /// 
        /// </summary>
        public Goal_id_Stamp stamp { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string id { get; set; }
    }

    public class Goal
    {
        /// <summary>
        /// 
        /// </summary>
        public string behavior_name { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> arg_keys { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> arg_values { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> input_keys { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> input_values { get; set; }
    }

    public class Msg
    {
        /// <summary>
        /// 
        /// </summary>
        public Header header { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Goal_id goal_id { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Goal goal { get; set; }
    }

    public class TaskPublish
    {
        /// <summary>
        /// 
        /// </summary>
        public string op { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string topic { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Msg msg { get; set; }
    }
}
